package com.qing.array;

/**
 * 数组的四个基本特点
 * 1：长度是确定的，数组一旦被创建，它的大小就不可以被改变了
 * 2：元素必须是相同类型，统一的，不能出现其他元素类型
 * 3：数组类型可以是任意数据类型，包括基本类型和引用类型
 * 4：数组变量属于引用类型，数组也可以看成是对象，数组中的每个元素相当于对象中的成员变量
 * Java中对象是存在堆中的，因此数组无论保存原始类型还是其他对象类型，数组对象本身是在堆中的
 */
public class Array {
    public static void main(String[] args) {
        //定义数组（推荐首选用这个）
        int[] num;
        //这种类型是c++语言风法，为了让c++程序员可以快速掌握java
        // int num1[];

        System.out.println("=========================================");
        //定义可以存放10个int类型数值的数组
        int[] nums1 = new int[10];
        //给数组赋值
        nums1[0] = 1;
        nums1[1] = 2;
        //未赋值的int类型值是0
        //计算数组中所有元素和
        int sum = 0;
        for (int i : nums1) {
            sum += i;
        }
        System.out.println(sum);
    }

    //定义数组的几个方法
    public void definitionArraysWay() {
        //静态初始化（声明即赋值）
        int[] a = {1, 1, 1};
        int[] c = new int[]{1, 2, 3};

        //动态初始化（包含默认初始化，int类型不赋值默认为0，String类型默认为null...）
        int[] b = new int[5];
        b[0] = 1;
    }
}
